!------------------------------------------------------------------------------
! TJU/Department of Mechanics, Fluid Mechanics, Code START
!------------------------------------------------------------------------------
!> @Author: Jianxin Liu shookware@tju.edu.cn
!> @Date: 2024-08-02 16:51:54
!> @LastEditTime: 2024-08-02 16:51:55
!> @LastEditors: Jianxin Liu shookware@tju.edu.cn
!> @Description:
!> @FilePath: /START_NS_3D/src/module_field_base.f90
!> @Copyright (c) 2024 by Jianxin Liu email: shookware@tju.edu.cn, All Rights Reserved.
!------------------------------------------------------------------------------
module mod_field_base

   use mod_eos_base
   implicit none

   private
   public :: type_field_base

   type, abstract :: type_field_base
      type(type_eos), pointer :: eos
   contains
      procedure :: set_eos => SetEOSField
   end type type_field_base

contains

   subroutine SetEOSField(this, eos)
      class(type_field_base), intent(inout) :: this
      type(type_eos), target, intent(in) :: eos

      this%eos => eos

   end subroutine SetEOSField

end module mod_field_base
